جلد سخت سیاه و سفید
Product details
- Publisher : Packt Publishing (January 21, 2022)
- Language : English
- Paperback : 384 pages
- ISBN-10 : 180181144X
- ISBN-13 : 978-1801811446
کتاب Speed Up Your Python with Rust: Optimize Python performance by creating Python pip modules in Rust with PyO3
Discover how to inject your code with highly performant Rust features to develop fast and memory-safe applications
Key Features
- Learn to implement Rust in a Python system without altering the entire system
- Write safe and efficient Rust code as a Python developer by understanding the essential features of Rust
- Build Python extensions in Rust by using Python NumPy modules in your Rust code
Book Description
Python has made software development easier, but it falls short in several areas including memory management that lead to poor performance and security. Rust, on the other hand, provides memory safety without using a garbage collector, which means that with its low memory footprint, you can build high-performant and secure apps relatively easily. However, rewriting everything in Rust can be expensive and risky as there might not be package support in Rust for the problem being solved. This is where Python bindings and pip come in.
This book will help you, as a Python developer, to start using Rust in your Python projects without having to manage a separate Rust server or application. Seeing as you'll already understand concepts like functions and loops, this book covers the quirks of Rust such as memory management to code Rust in a productive and structured manner. You'll explore the PyO3 crate to fuse Rust code with Python, learn how to package your fused Rust code in a pip package, and then deploy a Python Flask application in Docker that uses a private Rust pip module. Finally, you'll get to grips with advanced Rust binding topics such as inspecting Python objects and modules in Rust.
By the end of this Rust book, you'll be able to develop safe and high-performant applications with better concurrency support.
What you will learn
- Explore the quirks of the Rust programming language that a Python developer needs to understand to code in Rust
- Understand the trade-offs for multiprocessing and thread safety to write concurrent code
- Build and manage a software project with cargo and crates
- Fuse Rust code with Python so that Python can import and run Rust code
- Deploy a Python Flask application in Docker that utilizes a private Rust pip module
- Inspect and create your own Python objects in Rust
Who this book is for
This book is for Python developers who want to speed up their Python code with Rust and implement Rust in a Python system without altering the entire system. You'll be able to learn about all topics relating to Rust programming. Basic knowledge of Python is required to get the most out of this book.
Table of Contents
- An Introduction to Rust
- Structuring Code in Rust
- Concurrency in Rust
- Building Private pip Modules in Python
- Creating a Rust Interface for Your pip Module
- Working with Python Objects in Rust
- Using Python Modules in Rust
- Structuring an End-to-End Python Module in Rust
- Structuring a Python Flask App for Rust
- Injecting Rust into a Python Flask App
- Best Practices
منابع کتاب کتاب Speed Up Your Python with Rust: Optimize Python performance by creating Python pip modules in Rust with PyO3
نحوه تزریق کد خود را با ویژگی های Rust بسیار کارآمد برای توسعه برنامه های کاربردی سریع و ایمن برای حافظه کشف کنید
ویژگی های کلیدی
- آموزش پیاده سازی Rust در سیستم پایتون بدون تغییر کل سیستم
- با درک ویژگی های ضروری Rust، کد Rust ایمن و کارآمد را به عنوان یک توسعه دهنده پایتون بنویسید
- با استفاده از ماژول های Python NumPy در کد Rust خود، افزونه های پایتون را در Rust بسازید
توضیحات کتاب
پایتون توسعه نرم افزار را آسان تر کرده است، اما در چندین زمینه از جمله مدیریت حافظه که منجر به عملکرد و امنیت ضعیف می شود، کوتاهی می کند. از طرف دیگر Rust امنیت حافظه را بدون استفاده از زباله جمعآوری فراهم میکند، به این معنی که با حافظه کم آن، میتوانید اپلیکیشنهایی با کارایی بالا و ایمن نسبتاً آسان بسازید. با این حال، بازنویسی همه چیز در Rust می تواند پرهزینه و مخاطره آمیز باشد زیرا ممکن است پشتیبانی بسته در Rust برای حل مشکل وجود نداشته باشد. اینجاست که پیوندهای پایتون و پیپ وارد می شوند.
این کتاب به شما به عنوان یک توسعهدهنده پایتون کمک میکند تا بدون نیاز به مدیریت یک سرور Rust یا برنامه جداگانه، از Rust در پروژههای پایتون خود استفاده کنید. با توجه به اینکه قبلاً مفاهیمی مانند توابع و حلقه ها را درک می کنید، این کتاب ویژگی های Rust مانند مدیریت حافظه برای کدگذاری Rust به شیوه ای سازنده و ساختار یافته را پوشش می دهد. شما جعبه PyO3 را برای ترکیب کد Rust با Python کاوش خواهید کرد، یاد خواهید گرفت که چگونه کد Rust ذوب شده خود را در یک بسته pip بسته بندی کنید، و سپس یک برنامه Python Flask را در Docker استقرار دهید که از یک ماژول Rust pip خصوصی استفاده می کند. در نهایت، با موضوعات پیشرفته Rust binding مانند بررسی اشیاء و ماژول های Python در Rust آشنا خواهید شد.
تا پایان این کتاب Rust، میتوانید برنامههای ایمن و با کارایی بالا را با پشتیبانی همزمان بهتر توسعه دهید.
آنچه خواهید آموخت
- ویژگیهای زبان برنامهنویسی Rust را که یک توسعهدهنده پایتون برای کدنویسی در Rust باید بداند، کاوش کنید.
- معاوضه های چند پردازشی و ایمنی رشته برای نوشتن کد همزمان را درک کنید
- ساخت و مدیریت یک پروژه نرم افزاری با محموله و جعبه
- کد Rust را با پایتون فیوز کنید تا پایتون بتواند کد Rust را وارد و اجرا کند
- یک برنامه Python Flask را در Docker مستقر کنید که از یک ماژول Rust pip خصوصی استفاده می کند
- اشیاء پایتون خود را در Rust بررسی و ایجاد کنید
این کتاب برای چه کسی است
این کتاب برای توسعه دهندگان پایتون است که می خواهند کد پایتون خود را با Rust افزایش دهند و Rust را در سیستم پایتون بدون تغییر کل سیستم پیاده سازی کنند. شما می توانید در مورد تمام موضوعات مربوط به برنامه نویسی Rust بیاموزید. برای استفاده بیشتر از این کتاب، دانش اولیه پایتون لازم است.
فهرست مطالب
- مقدمه ای بر زنگ
- کد ساختاری در Rust
- همزمانی در Rust
- ساخت ماژول های پیپ خصوصی در پایتون
- ایجاد یک رابط Rust برای ماژول پیپ شما
- کار با اشیاء پایتون در Rust
- استفاده از ماژول های پایتون در Rust
- ساختار یک ماژول پایتون سرتاسر در Rust
- ساختار یک برنامه Python Flask برای Rust
- تزریق Rust به اپلیکیشن Python Flask
- بهترین شیوه ها
ارسال نظر درباره کتاب Speed Up Your Python with Rust: Optimize Python performance by creating Python pip modules in Rust with PyO3